-- stack: in -- format: 8 (HyperCard 1) -- flags: 0x1000 (none) -- protect password hash: 0 -- maximum user level: 5 (scripting) -- window: Rect(x1=0, y1=0, x2=0, y2=0) -- screen: Rect(x1=0, y1=0, x2=0, y2=0) -- card dimensions: w=0 h=0 -- scroll: x=0 y=0 -- background count: 3 -- first background id: 95510 -- card count: 412 -- first card id: 95297 -- list block id: 114163 -- print block id: 84040 -- font table block id: 0 -- style table block id: 0 -- free block count: 0 -- free size: 0 bytes -- total size: 244192 bytes -- stack block size: 7680 bytes -- created by hypercard version: 0x00000000 -- compacted by hypercard version: 0x01258000 -- modified by hypercard version: 0x01258000 -- opened by hypercard version: 0x01258000 -- patterns[0]: 0x0000000000000000 -- patterns[1]: 0x0000220000002200 -- patterns[2]: 0x8800220088002200 -- patterns[3]: 0xCC003300CC003300 -- patterns[4]: 0xCC883322CC883322 -- patterns[5]: 0xEE88BB22EE88BB22 -- patterns[6]: 0xEECCBB33EECCBB33 -- patterns[7]: 0xFFCCFF33FFCCFF33 -- patterns[8]: 0xFFEEFFBBFFEEFFBB -- patterns[9]: 0xFFFFFFBBFFFFFFBB -- patterns[10]: 0x8010022001084004 -- patterns[11]: 0xFFFFFFFFFFFFFFFF -- patterns[12]: 0x8822882288228822 -- patterns[13]: 0x1122448811224488 -- patterns[14]: 0xC4800C6843023026 -- patterns[15]: 0xB130031BD8C00C8D -- patterns[16]: 0xAA00AA00AA00AA00 -- patterns[17]: 0x8822552288225522 -- patterns[18]: 0x8855225588552255 -- patterns[19]: 0x77DD77DD77DD77DD -- patterns[20]: 0x8000000000000000 -- patterns[21]: 0x55AA55AA55AA55AA -- patterns[22]: 0x038448300C020101 -- patterns[23]: 0x8244394482010101 -- patterns[24]: 0x8814224188412214 -- patterns[25]: 0x8080413E080814E3 -- patterns[26]: 0x22048C7422179810 -- patterns[27]: 0xBE808808EB088880 -- patterns[28]: 0x25C8328964244C92 -- patterns[29]: 0xA29C41BE2AC914EB -- patterns[30]: 0x40A00000040A0000 -- patterns[31]: 0x8040200002040800 -- patterns[32]: 0xAA00800088008000 -- patterns[33]: 0xFF80808080808080 -- patterns[34]: 0x081C22C180010204 -- patterns[35]: 0xFF808080FF080808 -- patterns[36]: 0xF87422478F172271 -- patterns[37]: 0xBF00BFBFB0B0B0B0 -- patterns[38]: 0xFF7FBE5DA2418000 -- patterns[39]: 0xFAF5FAF5A050A050 -- checksum: 0x0 ----- HyperTalk script ----- –– Solutions –– version 1.3 –– February 22,1989 –– Copyright Apple Computer, Inc. 1988 - 1989 –– Original Version by HyperPro –– Current Revision by Eli Cochran –– lineClicked & scrollLineClicked functions by Robin Shank –– HANDLERS: closeCard, beginSearch, doFind, notFound, returnKey –– findDialog, openStack, closeStack, sort –– FUNCTIONS: scrollLineClicked, lineClicked –– X-THINGS: –– printOut (by Gary Bond, copyright Apple Computer, Inc 1988 - 1989) –– dialog (by Gary Bond, copyright Apple Computer, Inc 1988 - 1989) function scrollLineClicked theOffSet return (round((the scroll of the target / the textHeight of the target) + (((the clickV - top of the target - theOffSet) div the textHeight of the target) + 1))) end scrollLineClicked function lineClicked return ((the clickV - top of the target) div the textHeight of the target) + 1 end lineClicked on closeCard if the visible of bkgnd btn "mask" is "true" then findDialog end closeCard on beginSearch global startCard, findWord, selectWord, beginning put empty into beginning put line 1 of bkgnd field "finder" into findWord if (selectWord is not empty) OR (findWord is not empty) then put the number of this card into startCard put bkgnd field "finder" into findWord lock screen doFind else select line 1 of bkgnd field "finder" end beginSearch on doFind global startCard, numIndexs, findWord, counter, selectWord global prevCard, prevScroll, beginning set cursor to watch if the number of this card > numIndexs then go next card else go to card (numIndexs + 1) find string findWord if (the result is empty) then if the number of this card > numIndexs then if the number of this card is beginning then go to card prevCard set the scroll of bkgnd field "description" to prevScroll unlock screen with wipe right select selectWord answer "Found all instances of" && "“" & findWord & "”." with "Search Again" or "Cancel" if it is "Cancel" then put empty into beginning exit to HyperCard else put empty into beginning lock screen doFind end if end if else add 1 to counter if counter > 2 then notFound else doFind end if if beginning is empty then put the number of this card into beginning end if else notFound put the foundChunk into selectWord -- FOUND IT put the number of this card into prevCard put the scroll of bkgnd field "description" into prevScroll put 0 into counter unlock screen with wipe right select selectWord end doFind on notFound global startCard, selectWord, findWord, counter go to card startCard findDialog "open" unlock screen answer "“" & findWord & "”" && "was not found." with "OK" select line 1 of bkgnd field "finder" put 0 into counter exit to HyperCard end notFound on returnKey global findWord if the visible of bkgnd btn "begin search" is true then send mouseUp to bkgnd btn "begin search" else if (the selection is not empty) and (findWord is not empty) then lock screen doFind else pass returnKey end if end returnKey on findDialog what global findWord, textInstr lock screen if what is not "open" then hide bkgnd btn "mask" hide bkgnd btn "mask1" hide bkgnd btn "mask2" hide bkgnd btn "mask3" hide bkgnd btn "begin search" hide bkgnd btn "Cancel" hide bkgnd field "searchMe" hide bkgnd field "finder" hide bkgnd field "Instr" unlock screen put empty into bkgnd field "finder" put empty into bkgnd field "Instr" put empty into bkgnd field "searchMe" else show bkgnd btn "mask" show bkgnd btn "mask1" show bkgnd btn "mask2" show bkgnd btn "mask3" show bkgnd btn "begin search" show bkgnd btn "Cancel" show bkgnd field "searchMe" show bkgnd field "finder" show bkgnd field "Instr" put "Click a word or phrase in the list or type an entry in" && "the field below." & return & "Then click the “Begin Search” button." & return & return & "Press the Return key to continue searching." into bkgnd field "Instr" put findWord into bkgnd field "finder" put bkgnd field 1 of first card into bkgnd field "searchMe" unlock screen end if select line 1 of bkgnd field "finder" end findDialog on openStack global numIndexs, findWord, resetBlindTyping push recent card pop card into whereIcameFrom if the version < 1.2 then answer "This stack requires HyperCard 1.2 or later." go whereIcameFrom exit to HyperCard end if hide menubar put ((the number of cards in bkgnd "index") + 1) into numIndexs if the blindTyping is "true" then set blindTyping to "false" put "true" into resetBlindTyping end if end openStack on closeStack global resetBlindTyping push card lock screen go to first card set the scroll of bkgnd field "categories" to 0 repeat for the number of cards in next bkgnd go next card set the scroll of bkgnd field "titles" to 0 end repeat pop card unlock screen if resetBlindTyping is "true" then set blindTyping to "true" end closeStack on sort answer "Sorting this stack would be destructive." end sort on domenu menu --// Added by Medior, Inc. 12/6/90 global RPStackName if menu is in "Home,Quit HyperCard" and RPStackName is not "" then set cursor to watch put RPStackName into shortname repeat until offset(":",shortname) = 0 delete char 1 to offset(":",shortname) of shortname end repeat delete last char of shortname answer "This will return to "&shortname&"." with "Cancel" or "OK" if it is "Cancel" then exit domenu set cursor to watch lock screen go RPStackName unlock screen with dissolve exit domenu else pass doMenu end domenu